package com.hivekion.system.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hivekion.common.entity.TreeNode;
import com.hivekion.system.domain.SysDept;
import com.hivekion.system.domain.vo.dept.SysDeptCreateInputVo;
import com.hivekion.system.domain.vo.dept.SysDeptModelVo;
import com.hivekion.system.domain.vo.dept.SysDeptUpdateInputVo;
import com.hivekion.system.domain.vo.dept.SysDeptViewVo;

import java.util.List;

public interface ISysDeptService extends IService<SysDept> {

    Boolean checkDeptNameUnique(String deptName, String deptId);

    SysDeptModelVo getDeptInfo(String deptId);

    boolean create(SysDeptCreateInputVo dept);

    boolean update(SysDeptUpdateInputVo inputVo);

    boolean delete(String deptId);

    boolean changeStatus(String deptId, Integer status);

    List<SysDeptViewVo> getList();

    List<TreeNode> getTreeSelect();

    List<SysDept> getAllList();
}
